package com.itheima.health.dao;

import com.github.pagehelper.Page;
import com.itheima.health.pojo.Permission;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 权限DAO
 */
public interface PermissionDao {
    /**
     * 根据角色ID查询权限信息
     * @param roleId
     * @return
     */
    List<Permission> selectByRoleId(@Param("roleId") Integer roleId);

    /**
     * 分页展示权限数据
     * @param queryString
     * @return
     */
    Page<Permission> findPage(@Param("queryString") String queryString);

    /**
     * 添加权限
     * @param permission
     */
    void add(Permission permission);

    /**
     * 根据id查询权限
     * @param id
     * @return
     */
    Permission selectById(@Param("id") Integer id);
    /**
     * 编辑权限
     * @param permission
     */

    void update(Permission permission);
    /**
     * 根据id删除
     */
    void deleteById(@Param("id") Integer id);

    /**
     * 统计与权限有关联的角色数量
     * @param permissionId
     * @return
     */
    Long countPermissionByRole(@Param("permissionId") Integer permissionId);

    List<Permission> selectpermission();
}
